package com.xingzhe.content.service;

import com.xingzhe.content.model.dto.BindTeachplanMediaDto;
import com.xingzhe.content.model.dto.SaveTeachPlanDto;
import com.xingzhe.content.model.dto.TeachplanDto;
import com.xingzhe.content.model.po.TeachplanMedia;

import java.util.List;

/**
 * 课程计划管理
 */
public interface TeachPlanService {
    /**
     * 课程计划查询
     * @param courseId 课程计划id
     * @return
     */
    List<TeachplanDto> findTeachPlanTree(Long courseId);

    /**
     * 课程计划的新增或者修改
     * @param teachPlanDto 课程计划信息
     */
    void saveTeachPlan(SaveTeachPlanDto teachPlanDto);

    /**
     * 删除课程的大章节或者小章节
     * @param id 章节id
     */
    void deleteTeachPlan(Long id);

    /**
     * 向下移动课程计划章节的位置
     * @param id 章节id
     */
    List<TeachplanDto> moveDownTeachPlan(Long id);

    /**
     * 向上移动课程计划章节的位置
     * @param id 章节id
     */
    List<TeachplanDto> moveUpTeachPlan(Long id);

    /**
     * @description 教学计划绑定媒资
     * @param bindTeachplanMediaDto
     * @return com.xingzhe.content.model.po.TeachplanMedia
     * @author Mr.M
     * @date 2022/9/14 22:20
     */
     void associationMedia(BindTeachplanMediaDto bindTeachplanMediaDto);


     void NotAssociationMedia(Long teachPlanId,String mediaId);

}
